package com.interfaz;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.BoxLayout;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JTabbedPane;

import com.modelo.Usuario;

public class VentanaIngresoUsuario extends JFrame implements ActionListener{
	Container contenedor = this.getContentPane();
	JMenuBar barra_menu;
	JMenu inventario;
	JMenuItem add_element, remove_element, show_element, update_element;
	JDesktopPane panel;
	Usuario usuarioSesion;
	ElementoNuevo elemento_nuevo;
	ShowElementUser seu;
	JTabbedPane panelTab;
	public VentanaIngresoUsuario(Usuario usuario){
		
		BorderLayout bdVIU = new BorderLayout();		
		BorderLayout bdP = new BorderLayout();
		
		this.usuarioSesion = usuario;
		
				
		panel = new JDesktopPane();
		panel.setLayout(bdP);
		panel.setBackground(Color.DARK_GRAY);
		
		panelTab = new JTabbedPane();
		//panel.setPreferredSize(new Dimension(MAXIMIZED_HORIZ,400));
		
		seu = new ShowElementUser(usuarioSesion);
		seu.setMaximumSize(new Dimension(MAXIMIZED_HORIZ,300));
		elemento_nuevo = new ElementoNuevo(usuarioSesion);
	
		panelTab.add("Agregar", elemento_nuevo);
		panelTab.add("Editar",null);
		panelTab.setMinimumSize(new Dimension(MAXIMIZED_HORIZ,500));
		panelTab.setVisible(true);
		
		barra_menu = new JMenuBar();
		inventario = new JMenu("Inventarios");
		barra_menu.add(inventario);
		
		add_element = new JMenuItem("Nuevo Elemento");
		add_element.addActionListener(this);
		remove_element = new JMenuItem("Remover Elemento");
		show_element = new JMenuItem("Mostrar Elementos");
		show_element.addActionListener(this);
		update_element = new JMenuItem("Actualizar Elemento");
		
		inventario.add(add_element);
		inventario.add(show_element);
		inventario.add(update_element);
		inventario.add(remove_element);
		
		barra_menu.add(inventario);
		
		bdP.maximumLayoutSize(seu);
		bdP.minimumLayoutSize(panel);
		//this.setLayout(bdVIU);
		this.setLayout(null);
		this.add(panel, bdVIU.CENTER);
		
		
		panel.add(panelTab, bdP.NORTH);
		panel.add(seu, bdP.SOUTH);
		
		this.setJMenuBar(barra_menu);
		this.setExtendedState( getExtendedState()|JFrame.MAXIMIZED_BOTH );
		this.setDefaultCloseOperation(EXIT_ON_CLOSE);
		this.setVisible(true);
		
		
	}
	@Override
	public void actionPerformed(ActionEvent e) {
		// TODO Auto-generated method stub
		if(e.getSource().equals(add_element)){
			JOptionPane.showMessageDialog(this,"Equals add_element");
			elemento_nuevo = new ElementoNuevo(usuarioSesion);
			elemento_nuevo.toFront();
			//elemento_nuevo.setClosable(true);
			panel.add(elemento_nuevo);
			this.repaint();
		}
		if(e.getSource().equals(show_element)){
			JOptionPane.showMessageDialog(this,  "Equals show_element");
			seu = new ShowElementUser(usuarioSesion);
			seu.toFront();
			panel.add(seu, BorderLayout.SOUTH);
			this.repaint();
			
		}
	}

}
